package com.job.meeting.service.impl;

import com.job.meeting.mapper.BookingMapper;
import com.job.meeting.pojo.booking;
import com.job.meeting.service.bookingService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service("bookingService")

public class bookingServiceImpl implements bookingService {
    @Autowired
    BookingMapper bookingMapper;

    //这个函数输入一个包装好的booking，返回是否成功。
    //成功则为true，此函数的工作原理就是通过提取id并与数据库现有的比对。
    //如果现在有这个预约，那么就做覆盖操作，否则返回错误。
    //这不是用来作为插入预约用的——这有专门的函数。
    //成功返回值等于1，失败等于0
    @Override
    public int updateBooking(booking booking) {
        return bookingMapper.updateBooking(booking);
    }
    //这个函数负责插入booking，返回是否成功。
    //如果当前数据库有这个booking，返回失败——这也许意味着你可能需要使用对应的update函数。
    //成功返回值等于1，失败等于0
    @Override
    public int insertBooking(booking booking) {
        return bookingMapper.insertBooking(booking);
    }
    //成功返回值等于1，失败等于0
    //删除一个预约。输入对应的id，删除成功则为true，否则为false
    @Override
    public int deleteBooking(int id) {
        return bookingMapper.deleteBooking(id);
    }
    //获得一条预约。输入id，返回一个booking。如果没有获得则返回一个null。
    @Override
    public booking getBookingByID(int id) {
        return bookingMapper.getBookingByID(id);
    }
    //根据会议室id获取这个会议室的全部占用情况
    //int meeting_room_id
    @Override
    public List<booking> getAllBookingByMeetingRoomID(int meeting_room_id) {
        return bookingMapper.getAllBookingByMeetingRoomID(meeting_room_id);
    }

    @Override
    public List<booking> getAllBookingByState(int state) {
        return bookingMapper.getAllBookingByState(state);
    }

    @Override
    public List<booking> getAllBookingByUserID(int id) {
        return bookingMapper.getAllBookingByUserID(id);
    }
}
